package top.tenebrous.yzl.chat.domain.system;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import top.tenebrous.yzl.chat.domain.BaseDomain;

import java.util.Date;

/**
 * @autor: tylong
 * @date: 2021/7/22 15:49
 * @company: CTS
 * @version: 1.0
 */

/**
 * 角色菜单权限关系表(一角色多菜单)
 */
@ApiModel(value = "角色菜单映射")
@Data
@TableName(value = "sys_role_menu")
public class SysRoleMenu extends BaseDomain {

    private static final long serialVersionUID = 1L;
    /**
     * ID,自增序列
     */
    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "ID,自增序列")
    private Long id;

    /**
     * 角色SID
     */
    @TableField(value = "role_id")
    @ApiModelProperty(value = "角色SID")
    private Long roleId;

    /**
     * 菜单SID
     */
    @TableField(value = "menu_id")
    @ApiModelProperty(value = "菜单SID")
    private Long menuId;

    /**
     * 菜单ID集合
     */
    @TableField(exist = false)
    @ApiModelProperty(value = "菜单ID集合")
    private String menuIdArr;

    /**
     * 创建人ID，如果没有创建人，则标记为-1,代表系统
     */
    @TableField(value = "create_user")
    @ApiModelProperty(value = "创建人ID，如果没有创建人，则标记为-1,代表系统")
    private String createUser;

    /**
     * 创建时间，默认为系统时间
     */
    @TableField(value = "create_date")
    @ApiModelProperty(value = "创建时间，默认为系统时间")
    private Date createDate;

    /**
     * 修改人ID
     */
    @TableField(value = "update_user")
    @ApiModelProperty(value = "修改人ID")
    private String updateUser;

    /**
     * 修改时间
     */
    @TableField(value = "update_date")
    @ApiModelProperty(value = "修改时间")
    private Date updateDate;

    /**
     * 逻辑删除标记 0-正常，1-删除
     */
    @TableField(value = "is_deleted")
    @ApiModelProperty(value = "逻辑删除标记 0-正常，1-删除")
    private Integer isDeleted;
}